grabcut图像分割的原理简单介绍

您所在的位置:网站首页 graphcut C代码 grabcut图像分割的原理简单介绍

grabcut图像分割的原理简单介绍

2024-06-26 09:01:06| 来源: 网络整理| 查看: 265

grabcut采用graph cut图分割和最大流技术的一种交互式图像分割技术,不吹牛逼了,接触opencv 10来天,就这点墨水了,直接言归正传,在学习了https://blog.csdn.net/zouxy09/article/details/8534954,大牛的文章后,有点感悟,所以记录下来,若有人看见了,就当做好玩的吧。

首先来介绍一下Graph cut ,图(graph)的分割模型图下图所示(大家肯定都见过了),以能量公式为基准,采用max flow算法,一次全局求解最小能量割边,能量公式为 

 E(L)=aR(L)+B(L)

S与各个像素点之间的虚线就是R(L),各像素点之间的实线是B(L),系数a是一个权重系数,决定了哪个因素影响更大一些。

区域项R(L)的计算方法如下所示,表示像素点lp归属于前景'obj'的概率Pr,或者归属于背景‘bkg’的概率Pr,同时为了采用最大流方法计算割边(cuts),所以负对数,这样得到的若该像素点归属于前景的概率越大,则Rp(1) 能量越小,符合最大流max flow算法理论(啥是最大流?),Graph cut 算法是根据该像素点(lp)灰度值,在前景和背景[这个前景和背景需要事先进行标记的,你需要提前告诉Graph,哪个是背景?哪个是前景]中的灰度值直方图所占的比例来计算前景和背景概率的,但是Grab cut是根据搞死混合模型来计算的(等会细讲)

Rp(1) = -ln Pr(Ip|’obj’);                      Rp(0) = -ln Pr(Ip|’bkg’)

边界项B(L)的计算方法:

这个是Graph cut的计算方法,比较简单,B 就是计算某个像素点lp与相邻像素点lq之间的(灰度值)得差异,lp-lq的值越大,两个像素之间的边越是应该是割边(cuts),B的值越小,整体能量越小,符合最大流算法,在Grab cut 中,不是以灰度为基准,而是以BGR三通道衡量两像素的相似性,采用欧式距离(二范数)计算两个像素之间的差异。

最大流算法(max flow) 用于处理如何去切这个权值图(graph),切过之后累加得到能量E(L)值最小,切边(割边)就是上图中的黑线(各像素点之间的边)。

以上就是Graph cut的计算流程,Grab cut同样采用图框架理论,以及最大流算法求解割边,但是不同的是Grab cut 采用了BGR三通道(graph 是灰度图),在计算区域项R(L)时,采用了高斯混合模型。

///

grabcut的主要思路:(也只主要参考了上门面那位大牛的代码解释)

高斯混合模型,就是多个单高斯模型,如何评价一个像素集合呢?又如何判断某一个像素点属于该像素集合的概率呢?这时可以构建高斯模型来反映该像素集合的特征,在grabcut中,对应于前景和背景分别有5个高斯模型,例如若前景只有一个高斯模型,某个前景像素点lp在计算归属于前景的概率时,只有一种样本库模型,计算的归属概率有可能会很低,最后在最大流分割时,会被误判到背景里,所以有多个模型计算式,选取概率最大的一个,高斯模型越多,前景像素集的种类越多,越能够包容范围的像素点,过多的话计算量也会很大。

区域项R(L)的计算方法:

混合高斯概率计算公式如下:

这里面的x 是BGR三通道向量,如下所示:

                                         B         G        R 

第1个像素点p1        200      100     50

第2个像素点p2        220      110     60

第3个像素点p3        100      150    80

............

πi表示,第i个高斯模型的样本数量Ni在总的样本数量N里面的比值,

gi的是第i个高斯模型的概率模型公式,其中有两个参数,均值(ub,ug,ur)和协方差矩阵(协方差矩阵计算参照https://www.cnblogs.com/chaosimple/p/3182157.html),

这样一共有三个参数需要初始化(πi,均值u,协方差)

边界项B(L)的计算方法:

简单的说就是,计算相邻两个像素颜色之间的欧氏距离(B,G,R向量的二阶矩),可以参照源代码中的计算方法,一目了然

区域项反映的是,像素样本集合的整体特性,边界项反映的是两个像素之间的差异,一个这整体,一个是局部

具体流程用一幅图说明:

这样写真轻松,具体学习,可以通过这张图结合源代码,一定可以弄清楚的,有错误的地方,欢迎指出



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭